package com.ruitu.mall_98_2.mvp.contract;

import com.beanu.arad.base.BaseModel;
import com.beanu.arad.base.BasePresenter;
import com.beanu.arad.base.BaseView;
import com.ruitu.router_module.bean.User;
import com.ruitu.router_module.bean.api.BaseResult;

import rx.Observable;

public interface LoginContract {
    interface Model extends BaseModel {
        Observable<BaseResult<User>> login(String phone, String pwd,String type,String code);

        Observable<BaseResult<User>> quickLogin(String openId, String type);
    }

    interface View extends BaseView {
        void loginSuc(User user);

        void thirdLoginSuc(User user);

        void setThird();

        void differentPlace();
    }

    abstract class Presenter extends BasePresenter<View, Model> {
        public abstract void login(String phone, String pwd,String type,String code);

        public abstract void quickLogin(String openId, String type);
    }
}
